$speed:'';
@mixin color-transition($speed) {
  @if $speed == '' {

    -webkit-transition: color $speed ease-in-out;
    -moz-transition: color $speed ease-in-out;
    -o-transition: color $speed, ease-in-out;
    -ms-transition: color $speed ease-in-out;
    transition: color $speed ease-in-out;

  } @else {
    -webkit-transition: color .3s ease-in-out;
    -moz-transition: color .3s ease-in-out;
    -o-transition: color .3s ease-in-out;
    -ms-transition: color .3s ease-in-out;
    transition: color .3s ease-in-out;
  }
}

@mixin remove-transition {
  -webkit-transition: none; -moz-transition: none; -o-transition: none; -ms-transition: none; transition: none;
}

@mixin white-shadow {
  text-shadow:0 1px $brightest; filter:progid:DXImageTransform.Microsoft.DropShadow(offx=0, offy=1, color=#FFFFFF);
}

@mixin remove-shadow {
  text-shadow:0 0;
}
@mixin blue-shadow {
  text-shadow:0 -1px $dark_link_color; filter:progid:DXImageTransform.Microsoft.DropShadow(offx=0, offy=1, color=#FFFFFF);
}

@mixin photo-shadow {
	-moz-box-shadow:  0 0 1px 1px $light_gray;
	-webkit-box-shadow:  0 0 1px 1px $light_gray;
	-box-shadow: 0 0 1px 1px $light_gray;
}


@mixin transparency_fix {
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE8 */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);   /* IE6 & 7 */
  zoom: 1;
}

@mixin absolute_center($width) {
  position:absolute;
  width:$width;
  margin-left:-1 * $width/2;
  left:50%;
  right:50%;
}

@mixin border_radius($tl, $tr, $br, $bl) {
	-webkit-border-top-left-radius: $tl;
	-webkit-border-top-right-radius: $tr;
	-webkit-border-bottom-right-radius: $br;
	-webkit-border-bottom-left-radius: $bl;
	-moz-border-radius-topleft: $tl;
	-moz-border-radius-topright: $tr;
	-moz-border-radius-bottomright: $br;
	-moz-border-radius-bottomleft: $bl;
	border-top-left-radius: $tl;
	border-top-right-radius: $tr;
	border-bottom-right-radius: $br;
	border-bottom-left-radius: $bl;
}

/* Set sub, sup without affecting line-height: gist.github.com/413930 */
sub, sup { font-size: 75%; line-height: 0; position: relative; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

.ie6 legend, .ie7 legend { margin-left: -7px; }

/* Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }

.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

button:focus { outline-width:1px; outline-style:dotted; } button::-moz-focus-inner { padding:0; border:0; }

// fixes align position in the dataset input search field
.ie7, .ie8 {
  article span.input_text input { line-height:30px; }
}

.ie7, .ie8 {
  span.input_text input {
    line-height:32px;
  }
}
/* Hand cursor on clickable input elements */
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }


input::-webkit-input-placeholder { color:$gray; }
input:-moz-placeholder { color:$gray; }


// Fixes font rendering in Explorer
.ie6, .ie7, .ie8 {
  h1,h2,h3,h4,h5,h6, #tabs ul li a, nav ul li a {
    letter-spacing: 0!important;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=hIEfix.png,sizingMethod=crop)!important;
    zoom:1!important;
  }
}
